package com.llh.formmode;

import java.util.Map;

import org.apache.poi.ss.usermodel.Sheet;
import org.apache.poi.ss.usermodel.Workbook;
import weaver.file.ExcelParseForPOI;
import weaver.formmode.interfaces.ImportPreInterfaceForPOIAction;
import weaver.general.BaseBean;
import weaver.general.Util;
import weaver.hrm.User;

/**
 * 说明
 * 修改时
 * 类名要与文件名保持一致
 * class文件存放位置与路径保持一致。
 * 请把编译后的class文件，放在对应的目录中才能生效
 * 注意 同一路径下java名不能相同。
 * @author Administrator
 *
 */
public class CheckImportTaskStatus implements ImportPreInterfaceForPOIAction{

	@Override
	public String checkImportData(Map<String, Object> param, User user, ExcelParseForPOI excelParse) {
		BaseBean logger = new BaseBean();
		// 获取模块ID
        Integer modeId = Util.getIntValue(param.get("modeid").toString());
        //表单id
        Integer formId = Util.getIntValue(param.get("formid").toString());
        // 获取当前登录人员ID
        Integer userId = user.getUID();
		Workbook wb = excelParse.getWb();
		//获取第 sheetindex 个sheet的第row行第col列的单元格的值 (下标都是从1开始)
		//获取第一个sheet页
		Sheet sheet = wb.getSheetAt(0);
		logger.writeLog("===sheet=>" + sheet);
		//获取总行数
		//获得总行数,获取的是物理行数，也就是不包括那些空行（隔行）的情况。
		//int rsRows = sheet.getPhysicalNumberOfRows();
		//获取总行数,获取的是最后一行的编号（编号从0开始）
		int rsRows = sheet.getPhysicalNumberOfRows();
		for (int i=0;i<rsRows;i++){
			int rowIndex =i+1;
			//任务状态
			String status =excelParse.getValue("1", rowIndex, 7);
			logger.writeLog("===status=>" + status);
			//返回空则表示校验通过,否则验证不通过,不允许导入
			//书写校验逻辑
			if (status.startsWith("开始")) {
				return "第"+rowIndex+"行，第7列，任务状态不能为【开始】";
			}
		}
		return "";
	}


}
